home *** CD-ROM | disk | FTP | other *** search
- # CVS $Id: fonts.tcl,v 1.4 1995/04/28 11:40:44 zibi Exp $
- # This tests the use of multiple fonts
- #
-
- #
- # toggles the sensitivity of all buttons other that the one
- # being pressed. Also toggle the font to the weird font.
- #
- proc senCB {cbs} {
- set current [keylget cbs widget]
- set dlog [keylget cbs dialog]
-
- set formData [VtGetValues $dlog -userData]
-
- set rc [keylget formData rc]
-
- set keys [keylkeys formData]
-
- # VtHide $rc
-
- foreach key $keys {
- set but [keylget formData $key]
- if {$but == $rc} continue
-
- if {$but != $current} {
- set lastSen [VtGetValues $but -sensitive]
- set oldFont [VtGetValues $but -userData]
- VtSetSensitive $but [expr !$lastSen]
- if {$lastSen} {
- VtSetValues $but -font weirdFont
- } else {
- VtSetValues $but -font $oldFont
- }
-
- }
- }
- # VtShow $rc
- }
-
- #
- # Fonts defined in WServer
- #
- set fonts {
- smallNormalFont
- smallBoldFont
- smallItalicFont
-
- medNormalFont
- medBoldFont
- medItalicFont
-
- largeNormalFont
- largeBoldFont
- largeItalicFont
-
- monoNormalFont
- monoBoldFont
- monoItalicFont
-
- weirdFont
- }
-
-
- source tools.tcl
-
- set ap [VtOpen Fonts]
-
- set dlog [VtFormDialog $ap.form \
- -okLabel Exit \
- -okCallback QuitCB \
- -cancelLabel "Kill Server" \
- -cancelCallback QuitCB ]
-
-
- set rc [VtRowColumn $dlog.rc -packing COLUMN -numColumns 2]
- keylset formData rc $rc
-
- VtLabel $rc.butnothing -label "Nothing set"
-
- foreach f $fonts {
- VtLabel $rc.$f -font $f
- }
-
- VtPushButton $rc.nothing -label "Nothing set"
-
- foreach f $fonts {
- set but [VtPushButton $rc.but$f -label $f -font $f \
- -callback "senCB" -userData $f ]
- keylset formData buf$f $but
- }
-
- VtSetValues $dlog -userData $formData
-
- VtShowDialog $dlog
-
- VtMainLoop
-